@btn-prefix-cls: ~"@{sta-prefix}-btn";

// Button styles
// -----------------------------
.@{btn-prefix-cls} {
  .button;
  .button-default;

  // Make sure that the target of Button's click event always be `button`
  // Ref: https://github.com/ant-design/ant-design/issues/7034
  >i,
  >span {
    pointer-events: none;
  }


  &-primary {
    .button-primary;

    &.@{btn-prefix-cls}-loading {
      .button-loading-color(@btn-primary-bg);
    }

    .@{btn-prefix-cls}-group &:not(:first-child):not(:last-child) {
      border-right-color: @btn-group-border;
      border-left-color: @btn-group-border;

      &:disabled {
        border-color: @btn-default-border;
      }
    }

    .@{btn-prefix-cls}-group &:first-child {
      &:not(:last-child) {
        border-right-color: @btn-group-border;

        &[disabled] {
          border-right-color: @btn-default-border;
        }
      }
    }

    .@{btn-prefix-cls}-group &:last-child:not(:first-child),
    .@{btn-prefix-cls}-group &+& {
      border-left-color: @btn-group-border;

      &[disabled] {
        border-left-color: @btn-default-border;
      }
    }
  }

  &-info {
    .button-info;

    &.@{btn-prefix-cls}-loading {
      .button-loading-color(@info-color);
    }
  }

  &-success {
    .button-success;

    &.@{btn-prefix-cls}-loading {
      .button-loading-color(@success-color);
    }
  }

  &-warning {
    .button-warning;

    &.@{btn-prefix-cls}-loading {
      .button-loading-color(@warning-color);
    }
  }

  &-error {
    .button-error;

    &.@{btn-prefix-cls}-loading {
      .button-loading-color(@error-color);
    }
  }


  &-dashed {
    .button-dashed;
  }


  &-circle,
  &-circle-outline {
    .btn-circle(@btn-prefix-cls);
  }



  &-group {
    .button-group(@btn-prefix-cls);
  }

  &:not(&-circle):not(&-circle-outline)&-icon-only {
    padding-left: 8px;
    padding-right: 8px;
  }

  // http://stackoverflow.com/a/21281554/3040605
  &:focus>span,
  &:active>span {
    position: relative;
  }

}